package com.yunjian.core.basic.model;

import java.util.ArrayList;
import java.util.List;

public class SResourceExample {
    /**
	 * @mbggenerated
	 */
	protected String orderByClause;
	/**
	 * @mbggenerated
	 */
	protected boolean distinct;
	/**
	 * @mbggenerated
	 */
	protected List<Criteria> oredCriteria;

	/**
	 * @mbggenerated
	 */
	public SResourceExample() {
		oredCriteria = new ArrayList<Criteria>();
	}

	/**
	 * @mbggenerated
	 */
	public void setOrderByClause(String orderByClause) {
		this.orderByClause = orderByClause;
	}

	/**
	 * @mbggenerated
	 */
	public String getOrderByClause() {
		return orderByClause;
	}

	/**
	 * @mbggenerated
	 */
	public void setDistinct(boolean distinct) {
		this.distinct = distinct;
	}

	/**
	 * @mbggenerated
	 */
	public boolean isDistinct() {
		return distinct;
	}

	/**
	 * @mbggenerated
	 */
	public List<Criteria> getOredCriteria() {
		return oredCriteria;
	}

	/**
	 * @mbggenerated
	 */
	public void or(Criteria criteria) {
		oredCriteria.add(criteria);
	}

	/**
	 * @mbggenerated
	 */
	public Criteria or() {
		Criteria criteria = createCriteriaInternal();
		oredCriteria.add(criteria);
		return criteria;
	}

	/**
	 * @mbggenerated
	 */
	public Criteria createCriteria() {
		Criteria criteria = createCriteriaInternal();
		if (oredCriteria.size() == 0) {
			oredCriteria.add(criteria);
		}
		return criteria;
	}

	/**
	 * @mbggenerated
	 */
	protected Criteria createCriteriaInternal() {
		Criteria criteria = new Criteria();
		return criteria;
	}

	/**
	 * @mbggenerated
	 */
	public void clear() {
		oredCriteria.clear();
		orderByClause = null;
		distinct = false;
	}

	/**
	 * This class was generated by MyBatis Generator. This class corresponds to the database table s_resource
	 * @mbggenerated
	 */
	protected abstract static class GeneratedCriteria {
		protected List<Criterion> criteria;

		protected GeneratedCriteria() {
			super();
			criteria = new ArrayList<Criterion>();
		}

		public boolean isValid() {
			return criteria.size() > 0;
		}

		public List<Criterion> getAllCriteria() {
			return criteria;
		}

		public List<Criterion> getCriteria() {
			return criteria;
		}

		protected void addCriterion(String condition) {
			if (condition == null) {
				throw new RuntimeException("Value for condition cannot be null");
			}
			criteria.add(new Criterion(condition));
		}

		protected void addCriterion(String condition, Object value,
				String property) {
			if (value == null) {
				throw new RuntimeException("Value for " + property
						+ " cannot be null");
			}
			criteria.add(new Criterion(condition, value));
		}

		protected void addCriterion(String condition, Object value1,
				Object value2, String property) {
			if (value1 == null || value2 == null) {
				throw new RuntimeException("Between values for " + property
						+ " cannot be null");
			}
			criteria.add(new Criterion(condition, value1, value2));
		}

		public Criteria andResIdIsNull() {
			addCriterion("RES_ID is null");
			return (Criteria) this;
		}

		public Criteria andResIdIsNotNull() {
			addCriterion("RES_ID is not null");
			return (Criteria) this;
		}

		public Criteria andResIdEqualTo(String value) {
			addCriterion("RES_ID =", value, "resId");
			return (Criteria) this;
		}

		public Criteria andResIdNotEqualTo(String value) {
			addCriterion("RES_ID <>", value, "resId");
			return (Criteria) this;
		}

		public Criteria andResIdGreaterThan(String value) {
			addCriterion("RES_ID >", value, "resId");
			return (Criteria) this;
		}

		public Criteria andResIdGreaterThanOrEqualTo(String value) {
			addCriterion("RES_ID >=", value, "resId");
			return (Criteria) this;
		}

		public Criteria andResIdLessThan(String value) {
			addCriterion("RES_ID <", value, "resId");
			return (Criteria) this;
		}

		public Criteria andResIdLessThanOrEqualTo(String value) {
			addCriterion("RES_ID <=", value, "resId");
			return (Criteria) this;
		}

		public Criteria andResIdLike(String value) {
			addCriterion("RES_ID like", value, "resId");
			return (Criteria) this;
		}

		public Criteria andResIdNotLike(String value) {
			addCriterion("RES_ID not like", value, "resId");
			return (Criteria) this;
		}

		public Criteria andResIdIn(List<String> values) {
			addCriterion("RES_ID in", values, "resId");
			return (Criteria) this;
		}

		public Criteria andResIdNotIn(List<String> values) {
			addCriterion("RES_ID not in", values, "resId");
			return (Criteria) this;
		}

		public Criteria andResIdBetween(String value1, String value2) {
			addCriterion("RES_ID between", value1, value2, "resId");
			return (Criteria) this;
		}

		public Criteria andResIdNotBetween(String value1, String value2) {
			addCriterion("RES_ID not between", value1, value2, "resId");
			return (Criteria) this;
		}

		public Criteria andResNameIsNull() {
			addCriterion("RES_NAME is null");
			return (Criteria) this;
		}

		public Criteria andResNameIsNotNull() {
			addCriterion("RES_NAME is not null");
			return (Criteria) this;
		}

		public Criteria andResNameEqualTo(String value) {
			addCriterion("RES_NAME =", value, "resName");
			return (Criteria) this;
		}

		public Criteria andResNameNotEqualTo(String value) {
			addCriterion("RES_NAME <>", value, "resName");
			return (Criteria) this;
		}

		public Criteria andResNameGreaterThan(String value) {
			addCriterion("RES_NAME >", value, "resName");
			return (Criteria) this;
		}

		public Criteria andResNameGreaterThanOrEqualTo(String value) {
			addCriterion("RES_NAME >=", value, "resName");
			return (Criteria) this;
		}

		public Criteria andResNameLessThan(String value) {
			addCriterion("RES_NAME <", value, "resName");
			return (Criteria) this;
		}

		public Criteria andResNameLessThanOrEqualTo(String value) {
			addCriterion("RES_NAME <=", value, "resName");
			return (Criteria) this;
		}

		public Criteria andResNameLike(String value) {
			addCriterion("RES_NAME like", value, "resName");
			return (Criteria) this;
		}

		public Criteria andResNameNotLike(String value) {
			addCriterion("RES_NAME not like", value, "resName");
			return (Criteria) this;
		}

		public Criteria andResNameIn(List<String> values) {
			addCriterion("RES_NAME in", values, "resName");
			return (Criteria) this;
		}

		public Criteria andResNameNotIn(List<String> values) {
			addCriterion("RES_NAME not in", values, "resName");
			return (Criteria) this;
		}

		public Criteria andResNameBetween(String value1, String value2) {
			addCriterion("RES_NAME between", value1, value2, "resName");
			return (Criteria) this;
		}

		public Criteria andResNameNotBetween(String value1, String value2) {
			addCriterion("RES_NAME not between", value1, value2, "resName");
			return (Criteria) this;
		}

		public Criteria andPResIdIsNull() {
			addCriterion("P_RES_ID is null");
			return (Criteria) this;
		}

		public Criteria andPResIdIsNotNull() {
			addCriterion("P_RES_ID is not null");
			return (Criteria) this;
		}

		public Criteria andPResIdEqualTo(String value) {
			addCriterion("P_RES_ID =", value, "pResId");
			return (Criteria) this;
		}

		public Criteria andPResIdNotEqualTo(String value) {
			addCriterion("P_RES_ID <>", value, "pResId");
			return (Criteria) this;
		}

		public Criteria andPResIdGreaterThan(String value) {
			addCriterion("P_RES_ID >", value, "pResId");
			return (Criteria) this;
		}

		public Criteria andPResIdGreaterThanOrEqualTo(String value) {
			addCriterion("P_RES_ID >=", value, "pResId");
			return (Criteria) this;
		}

		public Criteria andPResIdLessThan(String value) {
			addCriterion("P_RES_ID <", value, "pResId");
			return (Criteria) this;
		}

		public Criteria andPResIdLessThanOrEqualTo(String value) {
			addCriterion("P_RES_ID <=", value, "pResId");
			return (Criteria) this;
		}

		public Criteria andPResIdLike(String value) {
			addCriterion("P_RES_ID like", value, "pResId");
			return (Criteria) this;
		}

		public Criteria andPResIdNotLike(String value) {
			addCriterion("P_RES_ID not like", value, "pResId");
			return (Criteria) this;
		}

		public Criteria andPResIdIn(List<String> values) {
			addCriterion("P_RES_ID in", values, "pResId");
			return (Criteria) this;
		}

		public Criteria andPResIdNotIn(List<String> values) {
			addCriterion("P_RES_ID not in", values, "pResId");
			return (Criteria) this;
		}

		public Criteria andPResIdBetween(String value1, String value2) {
			addCriterion("P_RES_ID between", value1, value2, "pResId");
			return (Criteria) this;
		}

		public Criteria andPResIdNotBetween(String value1, String value2) {
			addCriterion("P_RES_ID not between", value1, value2, "pResId");
			return (Criteria) this;
		}

		public Criteria andResTypeIsNull() {
			addCriterion("RES_TYPE is null");
			return (Criteria) this;
		}

		public Criteria andResTypeIsNotNull() {
			addCriterion("RES_TYPE is not null");
			return (Criteria) this;
		}

		public Criteria andResTypeEqualTo(Integer value) {
			addCriterion("RES_TYPE =", value, "resType");
			return (Criteria) this;
		}

		public Criteria andResTypeNotEqualTo(Integer value) {
			addCriterion("RES_TYPE <>", value, "resType");
			return (Criteria) this;
		}

		public Criteria andResTypeGreaterThan(Integer value) {
			addCriterion("RES_TYPE >", value, "resType");
			return (Criteria) this;
		}

		public Criteria andResTypeGreaterThanOrEqualTo(Integer value) {
			addCriterion("RES_TYPE >=", value, "resType");
			return (Criteria) this;
		}

		public Criteria andResTypeLessThan(Integer value) {
			addCriterion("RES_TYPE <", value, "resType");
			return (Criteria) this;
		}

		public Criteria andResTypeLessThanOrEqualTo(Integer value) {
			addCriterion("RES_TYPE <=", value, "resType");
			return (Criteria) this;
		}

		public Criteria andResTypeIn(List<Integer> values) {
			addCriterion("RES_TYPE in", values, "resType");
			return (Criteria) this;
		}

		public Criteria andResTypeNotIn(List<Integer> values) {
			addCriterion("RES_TYPE not in", values, "resType");
			return (Criteria) this;
		}

		public Criteria andResTypeBetween(Integer value1, Integer value2) {
			addCriterion("RES_TYPE between", value1, value2, "resType");
			return (Criteria) this;
		}

		public Criteria andResTypeNotBetween(Integer value1, Integer value2) {
			addCriterion("RES_TYPE not between", value1, value2, "resType");
			return (Criteria) this;
		}

		public Criteria andStatusIsNull() {
			addCriterion("STATUS is null");
			return (Criteria) this;
		}

		public Criteria andStatusIsNotNull() {
			addCriterion("STATUS is not null");
			return (Criteria) this;
		}

		public Criteria andStatusEqualTo(Integer value) {
			addCriterion("STATUS =", value, "status");
			return (Criteria) this;
		}

		public Criteria andStatusNotEqualTo(Integer value) {
			addCriterion("STATUS <>", value, "status");
			return (Criteria) this;
		}

		public Criteria andStatusGreaterThan(Integer value) {
			addCriterion("STATUS >", value, "status");
			return (Criteria) this;
		}

		public Criteria andStatusGreaterThanOrEqualTo(Integer value) {
			addCriterion("STATUS >=", value, "status");
			return (Criteria) this;
		}

		public Criteria andStatusLessThan(Integer value) {
			addCriterion("STATUS <", value, "status");
			return (Criteria) this;
		}

		public Criteria andStatusLessThanOrEqualTo(Integer value) {
			addCriterion("STATUS <=", value, "status");
			return (Criteria) this;
		}

		public Criteria andStatusIn(List<Integer> values) {
			addCriterion("STATUS in", values, "status");
			return (Criteria) this;
		}

		public Criteria andStatusNotIn(List<Integer> values) {
			addCriterion("STATUS not in", values, "status");
			return (Criteria) this;
		}

		public Criteria andStatusBetween(Integer value1, Integer value2) {
			addCriterion("STATUS between", value1, value2, "status");
			return (Criteria) this;
		}

		public Criteria andStatusNotBetween(Integer value1, Integer value2) {
			addCriterion("STATUS not between", value1, value2, "status");
			return (Criteria) this;
		}

		public Criteria andResIndexIsNull() {
			addCriterion("RES_INDEX is null");
			return (Criteria) this;
		}

		public Criteria andResIndexIsNotNull() {
			addCriterion("RES_INDEX is not null");
			return (Criteria) this;
		}

		public Criteria andResIndexEqualTo(Integer value) {
			addCriterion("RES_INDEX =", value, "resIndex");
			return (Criteria) this;
		}

		public Criteria andResIndexNotEqualTo(Integer value) {
			addCriterion("RES_INDEX <>", value, "resIndex");
			return (Criteria) this;
		}

		public Criteria andResIndexGreaterThan(Integer value) {
			addCriterion("RES_INDEX >", value, "resIndex");
			return (Criteria) this;
		}

		public Criteria andResIndexGreaterThanOrEqualTo(Integer value) {
			addCriterion("RES_INDEX >=", value, "resIndex");
			return (Criteria) this;
		}

		public Criteria andResIndexLessThan(Integer value) {
			addCriterion("RES_INDEX <", value, "resIndex");
			return (Criteria) this;
		}

		public Criteria andResIndexLessThanOrEqualTo(Integer value) {
			addCriterion("RES_INDEX <=", value, "resIndex");
			return (Criteria) this;
		}

		public Criteria andResIndexIn(List<Integer> values) {
			addCriterion("RES_INDEX in", values, "resIndex");
			return (Criteria) this;
		}

		public Criteria andResIndexNotIn(List<Integer> values) {
			addCriterion("RES_INDEX not in", values, "resIndex");
			return (Criteria) this;
		}

		public Criteria andResIndexBetween(Integer value1, Integer value2) {
			addCriterion("RES_INDEX between", value1, value2, "resIndex");
			return (Criteria) this;
		}

		public Criteria andResIndexNotBetween(Integer value1, Integer value2) {
			addCriterion("RES_INDEX not between", value1, value2, "resIndex");
			return (Criteria) this;
		}

		public Criteria andResUrlIsNull() {
			addCriterion("RES_URL is null");
			return (Criteria) this;
		}

		public Criteria andResUrlIsNotNull() {
			addCriterion("RES_URL is not null");
			return (Criteria) this;
		}

		public Criteria andResUrlEqualTo(String value) {
			addCriterion("RES_URL =", value, "resUrl");
			return (Criteria) this;
		}

		public Criteria andResUrlNotEqualTo(String value) {
			addCriterion("RES_URL <>", value, "resUrl");
			return (Criteria) this;
		}

		public Criteria andResUrlGreaterThan(String value) {
			addCriterion("RES_URL >", value, "resUrl");
			return (Criteria) this;
		}

		public Criteria andResUrlGreaterThanOrEqualTo(String value) {
			addCriterion("RES_URL >=", value, "resUrl");
			return (Criteria) this;
		}

		public Criteria andResUrlLessThan(String value) {
			addCriterion("RES_URL <", value, "resUrl");
			return (Criteria) this;
		}

		public Criteria andResUrlLessThanOrEqualTo(String value) {
			addCriterion("RES_URL <=", value, "resUrl");
			return (Criteria) this;
		}

		public Criteria andResUrlLike(String value) {
			addCriterion("RES_URL like", value, "resUrl");
			return (Criteria) this;
		}

		public Criteria andResUrlNotLike(String value) {
			addCriterion("RES_URL not like", value, "resUrl");
			return (Criteria) this;
		}

		public Criteria andResUrlIn(List<String> values) {
			addCriterion("RES_URL in", values, "resUrl");
			return (Criteria) this;
		}

		public Criteria andResUrlNotIn(List<String> values) {
			addCriterion("RES_URL not in", values, "resUrl");
			return (Criteria) this;
		}

		public Criteria andResUrlBetween(String value1, String value2) {
			addCriterion("RES_URL between", value1, value2, "resUrl");
			return (Criteria) this;
		}

		public Criteria andResUrlNotBetween(String value1, String value2) {
			addCriterion("RES_URL not between", value1, value2, "resUrl");
			return (Criteria) this;
		}

		public Criteria andPermissionIsNull() {
			addCriterion("PERMISSION is null");
			return (Criteria) this;
		}

		public Criteria andPermissionIsNotNull() {
			addCriterion("PERMISSION is not null");
			return (Criteria) this;
		}

		public Criteria andPermissionEqualTo(String value) {
			addCriterion("PERMISSION =", value, "permission");
			return (Criteria) this;
		}

		public Criteria andPermissionNotEqualTo(String value) {
			addCriterion("PERMISSION <>", value, "permission");
			return (Criteria) this;
		}

		public Criteria andPermissionGreaterThan(String value) {
			addCriterion("PERMISSION >", value, "permission");
			return (Criteria) this;
		}

		public Criteria andPermissionGreaterThanOrEqualTo(String value) {
			addCriterion("PERMISSION >=", value, "permission");
			return (Criteria) this;
		}

		public Criteria andPermissionLessThan(String value) {
			addCriterion("PERMISSION <", value, "permission");
			return (Criteria) this;
		}

		public Criteria andPermissionLessThanOrEqualTo(String value) {
			addCriterion("PERMISSION <=", value, "permission");
			return (Criteria) this;
		}

		public Criteria andPermissionLike(String value) {
			addCriterion("PERMISSION like", value, "permission");
			return (Criteria) this;
		}

		public Criteria andPermissionNotLike(String value) {
			addCriterion("PERMISSION not like", value, "permission");
			return (Criteria) this;
		}

		public Criteria andPermissionIn(List<String> values) {
			addCriterion("PERMISSION in", values, "permission");
			return (Criteria) this;
		}

		public Criteria andPermissionNotIn(List<String> values) {
			addCriterion("PERMISSION not in", values, "permission");
			return (Criteria) this;
		}

		public Criteria andPermissionBetween(String value1, String value2) {
			addCriterion("PERMISSION between", value1, value2, "permission");
			return (Criteria) this;
		}

		public Criteria andPermissionNotBetween(String value1, String value2) {
			addCriterion("PERMISSION not between", value1, value2, "permission");
			return (Criteria) this;
		}

		public Criteria andResIconIsNull() {
			addCriterion("RES_ICON is null");
			return (Criteria) this;
		}

		public Criteria andResIconIsNotNull() {
			addCriterion("RES_ICON is not null");
			return (Criteria) this;
		}

		public Criteria andResIconEqualTo(String value) {
			addCriterion("RES_ICON =", value, "resIcon");
			return (Criteria) this;
		}

		public Criteria andResIconNotEqualTo(String value) {
			addCriterion("RES_ICON <>", value, "resIcon");
			return (Criteria) this;
		}

		public Criteria andResIconGreaterThan(String value) {
			addCriterion("RES_ICON >", value, "resIcon");
			return (Criteria) this;
		}

		public Criteria andResIconGreaterThanOrEqualTo(String value) {
			addCriterion("RES_ICON >=", value, "resIcon");
			return (Criteria) this;
		}

		public Criteria andResIconLessThan(String value) {
			addCriterion("RES_ICON <", value, "resIcon");
			return (Criteria) this;
		}

		public Criteria andResIconLessThanOrEqualTo(String value) {
			addCriterion("RES_ICON <=", value, "resIcon");
			return (Criteria) this;
		}

		public Criteria andResIconLike(String value) {
			addCriterion("RES_ICON like", value, "resIcon");
			return (Criteria) this;
		}

		public Criteria andResIconNotLike(String value) {
			addCriterion("RES_ICON not like", value, "resIcon");
			return (Criteria) this;
		}

		public Criteria andResIconIn(List<String> values) {
			addCriterion("RES_ICON in", values, "resIcon");
			return (Criteria) this;
		}

		public Criteria andResIconNotIn(List<String> values) {
			addCriterion("RES_ICON not in", values, "resIcon");
			return (Criteria) this;
		}

		public Criteria andResIconBetween(String value1, String value2) {
			addCriterion("RES_ICON between", value1, value2, "resIcon");
			return (Criteria) this;
		}

		public Criteria andResIconNotBetween(String value1, String value2) {
			addCriterion("RES_ICON not between", value1, value2, "resIcon");
			return (Criteria) this;
		}
	}

	/**
	 * This class was generated by MyBatis Generator. This class corresponds to the database table s_resource
	 * @mbggenerated
	 */
	public static class Criterion {
		private String condition;
		private Object value;
		private Object secondValue;
		private boolean noValue;
		private boolean singleValue;
		private boolean betweenValue;
		private boolean listValue;
		private String typeHandler;

		public String getCondition() {
			return condition;
		}

		public Object getValue() {
			return value;
		}

		public Object getSecondValue() {
			return secondValue;
		}

		public boolean isNoValue() {
			return noValue;
		}

		public boolean isSingleValue() {
			return singleValue;
		}

		public boolean isBetweenValue() {
			return betweenValue;
		}

		public boolean isListValue() {
			return listValue;
		}

		public String getTypeHandler() {
			return typeHandler;
		}

		protected Criterion(String condition) {
			super();
			this.condition = condition;
			this.typeHandler = null;
			this.noValue = true;
		}

		protected Criterion(String condition, Object value, String typeHandler) {
			super();
			this.condition = condition;
			this.value = value;
			this.typeHandler = typeHandler;
			if (value instanceof List<?>) {
				this.listValue = true;
			} else {
				this.singleValue = true;
			}
		}

		protected Criterion(String condition, Object value) {
			this(condition, value, null);
		}

		protected Criterion(String condition, Object value, Object secondValue,
				String typeHandler) {
			super();
			this.condition = condition;
			this.value = value;
			this.secondValue = secondValue;
			this.typeHandler = typeHandler;
			this.betweenValue = true;
		}

		protected Criterion(String condition, Object value, Object secondValue) {
			this(condition, value, secondValue, null);
		}
	}

	/**
     * This class was generated by MyBatis Generator.
     * This class corresponds to the database table s_resource
     *
     * @mbggenerated do_not_delete_during_merge
     */
    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }
}